package com.naiterui.ehp.bs.emr.vo.patient;

import java.io.Serializable;

import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.ToStringBuilder;

import com.fasterxml.jackson.annotation.JsonIgnore;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 吸烟状况
 *

 * @since 2.16
 */
@SuppressWarnings("unused")
@ApiModel(value = "MSmokeVO", description = "吸烟状况VO")
public class MSmokeVO implements Serializable {
    /**
     * 吸烟状态：0已戒烟
     */
    public static final int SMOKE_STATUS_QUIT = 0;
    /**
     * 吸烟状态：1吸烟
     */
    public static final int SMOKE_STATUS_YES = 1;
    /**
     * 吸烟状态：2不吸烟
     */
    public static final int SMOKE_STATUS_NO = 2;
    private static final long serialVersionUID = 9101747802257062196L;
    /**
     * <日吸烟量>
     */
    @ApiModelProperty(value = "日吸烟量")
    private String perdayNum;
    /**
     * <开始吸烟年龄>
     */
    @ApiModelProperty(value = "开始吸烟年龄")
    private String smokeStart;
    /**
     * 状态：0已戒烟1吸烟2不吸烟
     */
    @ApiModelProperty(value = "状态：0已戒烟1吸烟2不吸烟")
    private String status;

    public String getPerdayNum() {
        return this.perdayNum;
    }

    public void setPerdayNum(String perdayNum) {
        this.perdayNum = perdayNum;
    }

    public String getSmokeStart() {
        return this.smokeStart;
    }

    public void setSmokeStart(String smokeStart) {
        this.smokeStart = smokeStart;
    }

    public String getStatus() {
        return this.status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    @JsonIgnore
    public boolean isEmpty() {
        return StringUtils.isEmpty(this.status) && StringUtils.isEmpty(this.perdayNum) && StringUtils.isEmpty(this.smokeStart);
    }


    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }
}
